/**
 * 该文件由 csdev 自动生成并覆盖
 * 请勿手动修改，以免丢失代码
 */

/**
 * 公共接口
 * @author 陈小强 2023-12-21 20:45:36 （创建）
 * @author 陈小强 2024-03-21 17:36:02 （修改）
 */

import type { AxiosRequestConfig } from 'axios'
import useRequest from '/@/hooks/request'

/** 接口路径：/om/v1/pub/ */
export const path = '/om/v1/pub/'

const request = useRequest(path)

/**
 * 解密
 * @see /api/om/v1/pub/decrypt
 * @param {DecryptDTO} data 请求参数
 * @param {AxiosRequestConfig} options 请求配置
 * @returns {string[]} 后端返回数据
 * @author 陈小强 2024-01-26 10:05:21 （创建）
 * @author 林润民 2024-04-10 11:22:48 （修改）
 */
export function decrypt(data: DecryptDTO, options: AxiosRequestConfig = {}) {
  return request.post<string[]>('decrypt', data, options)
}


/**
 * 查询附件配置
 * @see /api/om/v1/pub/getFileConfig
 * @param {FileConfigDTO} data 请求参数
 * @param {AxiosRequestConfig} options 请求配置
 * @returns {FileConfigVO} 后端返回数据
 * @author 陈小强 2024-07-04 16:47:57 （创建）
 * @author 陈小强 2024-07-04 16:47:57 （修改）
 */
export function getFileConfig(data: FileConfigDTO, options: AxiosRequestConfig = {}) {
  return request.post<FileConfigVO>('getFileConfig', data, options)
}

/**
 * 所有字典数据
 * @see /api/om/v1/pub/listDict
 * @param {AxiosRequestConfig} options 请求配置
 * @returns {Record<string, Array<DictTreeVO>>} 后端返回数据
 * @author 陈子健 2024-01-22 16:42:44 （创建）
 * @author 林润民 2024-04-10 11:22:48 （修改）
 */
export function listDict(options: AxiosRequestConfig = {}) {
  return request.post<Record<string, Array<DictTreeVO>>>('listDict', {}, options)
}


/**
 * 分页查询内部员工（用于内部员工选择器）
 * @see /api/om/v1/pub/pageEmpSelect
 * @param {EmpQueryDTO} data 请求参数
 * @param {AxiosRequestConfig} options 请求配置
 * @returns {PageVO<EmpVO>} 后端返回数据
 * @author 陈小强 2023-12-21 20:45:36 （创建）
 * @author 林润民 2024-04-10 11:22:48 （修改）
 */
export function pageEmpSelect(data: EmpQueryDTO, options: AxiosRequestConfig = {}) {
  return request.post<PageVO<EmpVO>>('pageEmpSelect', data, options)
}


/**
 * 组织树结构选择器接口
 * @see /api/om/v1/pub/treeOrgSelect
 * @param {AxiosRequestConfig} options 请求配置
 * @returns {OrgTreeVO[]} 后端返回数据
 * @author 陈小强 2023-12-29 10:17:05 （创建）
 * @author 林润民 2024-04-10 11:22:48 （修改）
 */
export function treeOrgSelect(options: AxiosRequestConfig = {}) {
  return request.post<OrgTreeVO[]>('treeOrgSelect', {}, options)
}
